package repository;

import java.util.List;

import domain.Category;
import domain.Item;
import domain.Question;
import domain.User;


public interface ItemRepository {
	public void newItem(Item item);
	public Item getItem(int id);
	public List<Item> getItemsByCategory(Category category, String orderBy, int order);
	public List<Item> getItemsByUser(User user, int qty/*, int idExcluded*/);
	public List<Item> getItemsByUser(User user, String orderBy, int order);
	public List<Item> getLastItems(int qty);
	public List<Item> getMoreVisitedItems(int qty);
	public List<Item> getAllItems(String orderBy, int direction);
	public void deleteItem(Item item);
	public List<Item> getAdvancedSearchItems(String pattern, Category cat, Double minPrice, 
			Double maxPrice, Boolean state);
	public List<Item> getComplaintItems();
	public List<Item> suggestedItems(Item item);
	public Question getQuestion(int id);
	public List<Question> getUnresponsedQuestions(User user);
}
